package ink.metoo.gude.module.game.service

import ink.metoo.gude.module.game.domain.ddl.GameEvent
import ink.metoo.gude.module.game.domain.ddl.GameRoom
import ink.metoo.gude.module.game.domain.ddl.GameType
import ink.metoo.gude.module.game.repository.GameEventRepository
import ink.metoo.gude.module.game.repository.GameRoomRepository

interface GameCoreService : GameUserService {

    val gameRoomRepository: GameRoomRepository

    val gameEventRepository: GameEventRepository

    /**
     * 游戏类型
     */
    val gameType: GameType

    fun GameEvent.commit() = gameEventRepository.save(this)

    /**
     * 创建游戏
     */
    fun GameRoom.init() {

    }

    fun GameRoom.start() {

    }


}